package net.xiangcaowuyu.quartztask.service;

import net.xiangcaowuyu.quartztask.entity.TaskQuartz;
import org.apache.ibatis.annotations.Param;

/**
 * @author laughing
 * @date 2020/9/30
 * @site https://www.lisen.org
 */
public interface TaskQuartzService {

    /**
     * 根据主键删除
     * @param id 主键
     * @return 删除行数
     */
    int deleteByPrimaryKey(Long id);

    /**
     * 插入
     * @param record 实体
     * @return 成功返回1
     */
    int insert(TaskQuartz record);

    /**
     * 插入修改的值
     * @param record 实体
     * @return 成功返回1
     */
    int insertSelective(TaskQuartz record);

    /**
     * 根据主键获取
     * @param id 主键
     * @return 实体
     */
    TaskQuartz selectByPrimaryKey(Long id);

    /**
     * 更新
     * @param record 实体
     * @return 更新成功返回1
     */
    int updateByPrimaryKeySelective(TaskQuartz record);

    /**
     * 更新所有值
     * @param record 实体
     * @return 成功返回1
     */
    int updateByPrimaryKey(TaskQuartz record);

    /**
     * 根据名称及分组查找
     * @param jobName 任务名称
     * @param jobGroup 任务分组
     * @return 任务
     */
    TaskQuartz selectByJobNameAndJobGroup(@Param("jonName") String jobName, @Param("jobGroup") String jobGroup);

    /**
     * 根据名称及分组查找
     * @param jobName 任务名称
     * @param jobGroup 任务分组
     * @return 任务
     */
    int deleteByJobNameAndJobGroup(@Param("jonName") String jobName,@Param("jobGroup") String jobGroup);
}
